Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Canada F3 Canada F4 M15 Rodez Canada F2 Canada F1 Canada F2 Canada F3 Guatemala F1 Panama F1 Costa Rica F1 USA F4 USA F5 USA F6 Canada F2 USA F7 USA F8 El Salvador F1 Guatemala F1 Colombia F1 Colombia F2 Great Britain F8 Great Britain F9 Great Britain F6 Turkey F13 Turkey F15 Great Britain F1 Great Britain F2 France F3 Spain F9 Spain F10 Great Britain F5 Great Britain F6 Great Britain F7 Great Britain F11 Great Britain F12 Canada F5 Great Britain F15 Canada F7 Spain F35 Venezuela F8 Spain F37 USA F26 USA F27 USA F30 USA F31 Turkey F5 Turkey F6 USA F5 USA F6 Canada F1 Great Britain F4 Canada F2 Great Britain F5 Great Britain F6 Great Britain F7 Great Britain F8 Romania F1 Great Britain F13 Canada F5 Canada F7 Canada F9 USA F29 USA F30 USA F1 USA F2 USA F3 Australia F1 Great Britain F6 Canada F1 Great Britain F7 Canada F2 Great Britain F8 Egypt F9 Egypt F10 Great Britain F12 Great Britain F13 Great Britain F14 Great Britain F15 Great Britain F16 Canada F5 Great Britain F17 Canada F7 Great Britain F18 Canada F8 Great Britain F19 Canada F9 Israel F13 Israel F14 Israel F15 Great Britain F23 Greece F19 Greece F20 Qatar F3 Qatar F4 Qatar F5 Great Britain F4 USA F31 Great Britain F5 Great Britain F6 Great Britain F7 Bahrain F1 Qatar F1 Qatar F2 Great Britain F9 Great Britain F10 Great Britain F11 USA F16 USA F18 USA F19 Great Britain F16 USA F28 USA F20 USA F23 Great Britain F11 USA F21 USA F22 Canada F7 Canada F8 Israel F3 Canada F6 Canada F9 Turkey F38 Turkey F39 USA F29 Egypt F8 Great Britain F1 Canada F1 Canada F2 USA F11 USA F16 USA F17 USA F24 USA F25 USA F18 Canada F3 Canada F1 Canada F3 El Salvador F1 Canada F4 Canada F5 France F19 Sweden F4 Turkey F1 (Antalya) Turkey F2 (Antalya) Canada F5 M25 Nussloch M25 Glasgow M25 Calabasas M25 Bolton M25 Sunderland M25 Champaign M25 Fort Worth M25 Nur-Sultan Challenger Banque Nationale Rimouski - Rimouski Countrywide Classic USTA Challenger - Carson Trofeo Sisma Mantova - Mantova Bruno & Bruno Trial Lawyers Men's Challenger - New Orleans M25 Vale do Lobo M25 Faro M25 Elvas II Naples ITG Challenger - Naples M25 Quinta do Lago Sunset Moulding Yuba City Racquet Club Challenger - Yuba City M15 Budapest Morocco Tennis Tour - Rabat Challenger Natrel Presented by National Bank - Granby Morocco Tennis Tour - Marrakech M15 Foggia M25 Santa margherita di Pula M25 Santa margherita di Pula M25 Figueira da Foz Moncton Men's Challenger - Moncton M15 Hurghada Oldum Brown Vancouver Open - Vancouver Waco Tennis Challenger - Waco National Bank Men's Rimouski Challenger - Rimouski Levene Gouldin & Thompson Tennis Challenger - Binghamton Dallas Challenger M25 Monastir M25 Monastir Oklahoma Challenger - Tulsa Ford Tennis Championships - Louisville M25 Cancun Challenger Banque Nationale - Granby Nottingham Challenger Reggio Emilia Challenger M25 Sunderland Turin Challenger Granby Challenger The 'Fitz' Casino Challenger - Tunica 2007 West Side Tennis Club Clay Court Challenger - Forest Hills Vancouver Challenger Arpa Ceramic Cup - Reggio Emilia Cali Challenger Bogota Challenger Quito Challenger Santiago Challenger The Natrel's Challenger - Granby Carson Challenger Ojai Challenger Montevideo Challenger Aptos Challenger Singapore Challenger Rimouski Challenger Lubbock Challenger - Lubbock Rome Challenger Alessandria Challenger San Luis Potosi Challenger - San Luis Potosi Memorial A. Manfredini Sassuolo Challenger - Sassuolo Lexington Challenger M25 Roehampton Knoxville Challenger Noumea Challenger Honolulu Challenger Ford Tennis Championships - Louisville Asuncion Challenger Carson Challenger Bath Challenger Challenger de Providencia-Copa Kia - Santiago Abierto Internacional de Salinas 'Dario Expreso' - Salinas Athens Challenger Orbetello Challenger Zagreb Challenger Reggio Emilia Challenger Granby Challenger Tallahassee Challenger Arad Challenger Prague Challenger Granby Challenger Zenith Tennis Cup-Harbour Club - Milan Lexington Challenger Vancouver Challenger Burnie Challenger Semgroup Challenger - Tulsa Prague Challenger Napa Challenger JSM Challenger of Champaign - Urbana Tiburon Challenger Maui Challenger Dallas Challenger Nottingham-2 Challenger Irving Challenger Lexington Challenger Napa Challenger Tiburon Challenger Charlottesville Challenger Happy Valley Challenger Tallahassee Challenger Samarkand Challenger Great Britain F3 Open de Montauban - Montauban Ilkley Challenger Riviera di Rimini Challenger - Rimini Aptos Challenger Columbus Challenger Sacramento Challenger Happy Valley Challenger Bangkok Challenger Drummondville Challenger Savannah Challenger Taipei City Challenger Tallahassee Challenger Busan Challenger Seoul Challenger Bangkok Challenger Surbiton Challenger Monterrey Challenger Las Vegas Challenger Knoxville Challenger Champaign Challenger Savannah Challenger Gimcheon Challenger Surbiton Challenger Nottingham Challenger Winnipeg Challenger Gatineau Challenger Granby Challenger Las Vegas Challenger Knoxville Challenger Rennes Challenger Indian Wells Challenger Sarasota Challenger Tallahassee Challenger Bordeaux Challenger Surbiton Challenger Nottingham Challenger Cleveland Challenger Cary Challenger Calgary Challenger Cassis Challenger Phoenix Challenger Gwangju Challenger Nottingham Challenger Charlottesville Challenger Manta Challenger Ningboo Challenger Ilkley Challenger Granby Challenger Quimper Challenger Fairfield Challenger Sacramento Challenger Happy Valley Challenger Noumea Challenger Odlum Brown Vancouver Open - Vancouver Kosice Challenger Orlando Challenger Winnetka Challenger Cary Challenger Busan Challenger Lexington Challenger Tallahassee Challenger Bordeaux Challenger Bangkok Challenger Aptos Challenger Manta Challenger Vancouver Challenger Nur-Sultan 3 Challenger Lexington Challenger Gwangju Challenger Fairfield Challenger Winnipeg Challenger M25 Santa margherita di Pula Sacramento Challenger Tiburon Challenger Canberra Challenger Pro Challenger at Calabasas - Calabasas Knoxville Challenger Champaign Challenger Drummondville Challenger Le Gosier Challenger Cassis Challenger St. Tropez Challenger M15 Budapest Savannah Challenger Savannah Challenger Aix En Provence Challenger Knoxville Challenger Manchester Challenger Puerto Vallarta Challenger Lisbon Challenger Tiburon Challenger Granby Challenger Binghamton Challenger Ilkley Challenger Ilkley Challenger M15 Villers-les-Nancy Winnipeg Challenger Granby Challenger Nottingham Challenger Tiburon Challenger Gatineau Challenger Fairfield Challenger Nottingham Challenger Ilkley Challenger Manila Challenger Morelos Challenger Indian Wells Challenger Le Gosier Challenger Ho Chi Minh City Challenger Binghamton Challenger Drummondville Challenger Potchefstroom 2 Challenger Lexington Challenger Aptos Challenger Winnipeg Challenger Chicago Challenger Cary Challenger Bergamo Challenger Stockton Challenger Charlottesville Challenger Leon Challenger San Francisco Challenger Sarasota Challenger Bergamo Challenger Bordeaux Challenger M25 Glasgow Liuzhou Challenger Busan Challenger Granby Challenger Lexington Challenger St. Tropez Challenger Shenzhen Challenger Charlottesville Challenger Sarasota Challenger Savannah Challenger Aptos Challenger M25 Claremont Ningboo Challenger Charlottesville Challenger Knoxville Challenger Bangalore Challenger Champaign Challenger Columbus Challenger Furth Challenger Lyon Challenger Kosice Challenger Dallas Challenger Indian Wells Challenger Phoenix Challenger Drummondville Challenger Monterrey Challenger Panama City Challenger Sarasota Challenger Heilbronn Challenger Recanati Challenger Surbiton Challenger Nottingham Challenger The Natrel's Challenger of Granby - Granby Vancouver Challenger Aptos Challenger New Haven Challenger M15 Hurghada Morelos Challenger Bratislava Challenger Orlando Challenger Potchefstroom 1 Challenger Biella 3 Challenger Ostrava Challenger Naples Challenger - Naples Nottingham 1 Challenger Nur-Sultan 4 Challenger Nur-Sultan 2 Challenger Mallorca Challenger Rennes Challenger Biel Challenger Columbus Challenger Charlottesville Challenger Bratislava Challenger Helsinki Challenger Columbus Challenger Cleveland Challenger Aix En Provence Challenger Surbiton Challenger St. Brieuc Challenger Indianapolis Challenger Vancouver Challenger Bogota Challenger Bratislava Challenger Manchester Challenger Koblenz Challenger Surbiton Challenger Nottingham Challenger Bergamo Challenger Phoenix Challenger Matsuyama Challenger Swanston Challenger - Sacramento III Aberto Santa Catarina de Tenis - Florianopolis XL Bermuda Open - Bermuda Trofeo Cassa di Risparmio di Alessandria - Alessandria Nottingham 3 Challenger Columbus Challenger Tiburon Challenger Milan Challenger 2008 Lubbock Challenger - Lubbock Fairfield Challenger Charlottesville Challenger Knoxville Challenger Nottingham Challenger Bangkok Challenger Launceston Challenger M25 Reggio Emilia Vancouver Challenger Columbus Challenger Sacramento Challenger - Sacramento The Mercedes Benz of Calabasas - Calabasas Trieste Challenger Ostrava Challenger Cordenons Challenger Barcelona Challenger Istanbul Challenger Cary Challenger Caloundra Challenger San Remo Challenger Zagreb Challenger Napoli Challenger Brest Challenger Legg Mason Tennis Classic - Washington AEGON International - Eastbourne Sarasota Challenger Chennai Open - Chennai U.S. Mens's Clay Court Championship - Houston Serbia Open - Belgrade Cherbourg Challenger Brisbane International - Brisbane Burnie Challenger Champaign Challenger Delray Beach International Tennis Championships - Delray Beach US Men's Clay Court Championship - Houston AEGON International - Eastbourne San Benedetto Challenger Nanjing Challenger Winnipeg Challenger Sacramento Challenger Prostejov Challenger Dallas Challenger Honolulu Challenger Orlando Challenger Furth Challenger Cherbourg Challenger Raanana Challenger Gwangju Challenger Delray Beach Open - Delray Beach Delray Beach International Tennis Championships - Delray Beach Winston-Salem Open - Winston-Salem Memphis Open - Memphis AEGON Championships - London Brasil Open - Costa do Sauipe Noumea Challenger Erste Bank Open - Vienna Brisbane International - Brisbane European Open - Antwerp Sardegna Open - Cagliari Dallas Open - Dallas Rothesay International - Eastbourne West Lakes Challenger US Men's Clay Court Championship - Houston Sydney Challenger Rimouski Challenger Rimouski Challenger Thailand Open - Bangkok Stockton Challenger Panama City Challenger Baton Rouge Challenger Charlottesville Challenger Tallahassee Challenger Biel Challenger Knoxville Challenger Las Vegas Challenger Open Parc - Lyon New York Open - New York Abierto Mexicano - Los Cabos Champaign Challenger New York Open - New York Astana Open - Nur-Sultan Savannah Challenger Porto Challenger Copa Telmex - Buenos Aires Delray Beach International Tennis Championships - Delray Beach Delray Beach Open - Delray Beach Banja Luka Open - Banja Luka AIG Japan Open Tennis Championships - Tokyo Tel Aviv Watergen Open - Tel Aviv Infosys Hall of Fame Open - Newport Hong Kong Tennis Open - Hong Kong Citi Open - Washington Estoril Open - Estoril Sarasota Challenger Nottingham Challenger Bangkok Challenger US Men's Clay Court Championship - Houston Open de Nice Cote d'Azur - Nice Gatineau Challenger Champaign Challenger Maui Challenger Iasi Challenger US Men's Clay Court Championship - Houston Split Challenger Pune Challenger Budapest Challenger Bergamo Challenger Drummondville Challenger Claro Open Colombia - Bogota Aix En Provence Challenger Tallahassee Challenger U.S. National Indoor Tennis Championships - Memphis Maui Challenger Knoxville Challenger Aegon Nottingham Open - Nottingham Savannah Challenger Citi Open - Washington Dallas Challenger Kobe Challenger Hua Hin Challenger Monterrey Challenger Intrum Stockholm Open - Stockholm Newport Beach Challenger Francavilla Challenger Seoul Challenger Guadalajara Challenger Aegon Nottingham Open - Nottingham Hall of Fame Open - Newport Shanghai Challenger Prague Challenger Lexington Challenger Columbus Challenger Stockton Challenger Citi Open - Washington Delray Beach Open - Delray Beach Shenzhen Challenger Surbiton Challenger Columbus Challenger Newport Beach Challenger Vancouver Challenger Vancouver Challenger Cary Challenger Rennes Challenger Citi Open - Washington Abierto Mexicano - Los Cabos St. Petersburg Open - St. Petersburg Winnipeg Challenger Gatineau Challenger Qatar ExxonMobil Open - Doha Vancouver Challenger Ecuador Open - Quito Las Vegas Challenger Champaign Challenger Newport Beach Challenger Vilnius Challenger Burnie Challenger Guadalajara Challenger Alicante Challenger Parma Challenger Nur-Sultan 1 Challenger Belgrade Challenger Prague Challenger Little Rock Challenger Orlando 2 Challenger Hersonissos 4 Challenger Cassis Challenger Qatar ExxonMobil Open - Doha Rennes Challenger Bordeaux Challenger Millennium Estoril Open - Estoril cinch Championships - London Nature Valley International - Eastbourne Citi Open - Washington Lugano Challenger Tunis Challenger Serbia Open - Belgrade Millennium Estoril Open - Estoril cinch Championships - London Cary 1 Challenger Viking International - Eastbourne Bratislava 2 Challenger Brest Challenger Grand Prix Hassan II - Casablanca Helsinki Challenger Brisbane - Brisbane SAP Open - San Jose AEGON International - Eastbourne Roanne Challenger China Open - Beijing Brisbane International - Brisbane Delray Beach Open - Delray Beach New York Open - New York Delray Beach Open - Delray Beach M25 Glasgow Tunis Challenger Rogers Cup - Montreal Rogers Masters - Toronto Leon Challenger Tallahassee Challenger Rogers Cup - Montreal Rogers Cup - Toronto Rogers Cup - Montreal BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells cinch Championships - London Aix En Provence Challenger Tallahassee Challenger Cary 2 Challenger BNP Paribas Open - Indian Wells Open Parc - Lyon BNP Paribas Open - Indian Wells Rogers Cup - Toronto Rogers Cup - Montreal BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Rogers Cup - Toronto Western & Southern Open - Cincinnati Rogers Cup - Montreal Miami Open - Miami Rogers Cup - Toronto Abierto Mexicano Telcel - Acapulco Miami Open - Miami U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Shanghai Rolex Masters - Shanghai Rogers Cup - Toronto BNP Paribas Open - Indian Wells Stockholm Open - Stockholm Miami Open - Miami French Open - Paris Rogers Masters - Montreal Rogers Cup - Toronto Miami Open - Miami Wimbledon - London U.S. Open - New York Miami Open - Miami Wimbledon - London Coupe Rogers - Montreal U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London European Open - Antwerp French Open - Paris U.S. Open - New York BNP Paribas Open - Indian Wells French Open - Paris Rothesay International - Eastbourne Miami Open - Miami Atlanta Open - Atlanta French Open - Paris National Bank Open - Toronto BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells AEGON Championships - London Hall of Fame Tennis Championships - Newport US Men's Clay Court Championship - Houston US Men's Clay Court Championship - Houston Fever-Tree Championships - London Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris French Open - Paris Australian Open - Melbourne Wimbledon - London Australian Open (juniors) French Open (juniors) U.S. Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) Australian Open - Melbourne French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) All Lower level tournaments Wimbledon - London U.S. Open - New York U.S. Open - New York Australian Open - Melbourne Wimbledon - London Olympics - Tokyo Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Australian Open Qualifying - Doha Rogers Masters - Toronto U.S. Open - New York Wimbledon - London Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Wimbledon - London U.S. Open - New York Delray Beach Open - Delray Beach Davis Cup, Group 1, 1R, CAN-MEX 4-1 Davis Cup, Group I, 1R, MEX-CAN 1-4 Davis Cup, Group 1, 1R, CAN-COL 5-0 Davis Cup, Group 1, 2R, CHI-CAN 3-2 Davis Cup, Group 1, 1R, COL-CAN 4-1 Davis Cup, World Group, 1R, JPN-CAN 4-1 Davis Cup, Group 1, 2R, BRA-CAN 3-1 Davis Cup, Group 1, PO, PER-CAN 2-3 Wimbledon (juniors) Davis Cup, Americas Group I, PO, CAN-DOM 5-0 Davis Cup, World Group, PO, ISR-CAN 2-3 Australian Open (juniors) Wimbledon (juniors) Wimbledon (juniors) Davis Cup, World Group, 1R, ESP-GBR 3-1 U.S. Open (juniors) Manacor Challenger